var Koa =require('koa');
var router =require('koa-router')();

var app= new Koa();

// ctx 上下文 context 包含 request 和 response 等信息;
//配置路由
router.get('/', async (cxt)=>{
    cxt.body='首页'
})
router.get('/news',async(cxt)=>{
    cxt.body='我是新闻页'
})

//get 传值
router.get('/newsDetail',async (cxt)=>{
    /*
    在koa中 GET 传值通过 request 接收 ,但是接收的方法有两种
    query: 返回格式化好的参数对象
    querystring: 返回的是请求字符串
    */
   console.log(cxt.query)
   cxt.body='我是新闻详情页'

})

//动态路由
router.get('/newsDetail/:newsId',async (cxt)=>{
    
   console.log(cxt.params)
   cxt.body='我是新闻详情页 newsId'

})

//动态路由多值传值
router.get('/newsList/:user/:newsId',async (cxt)=>{
    
    console.log(cxt.params)
    cxt.body='我是新闻详情页 user'+cxt.params.user + cxt.params.newsId
 
 })

//启动路由
app.use(router.routes())
app.use(router.allowedMethods()) 
//建议配置 router.allowedMethods() 用在路由匹配 router.routes() 之后,所以在当所有路由中间件最后调用. 
//此时根据ctx.status 设置response响应头

app.listen(8081)